
ALL = robot.exe

robot.exe: main.o Affichable.o EtatRobotAVide.o EtatRobot.o EtatRobotEnRoute.o EtatRobotFige.o Robot.o EtatRobotAVideFaceObstacle.o EtatRobotEnCharge.o EtatRobotEnChargeFaceObstacle.o AfficheurConsole.o CommandeDefaire.o
	g++ -o robot.exe main.o Affichable.o EtatRobotAVide.o EtatRobot.o EtatRobotEnRoute.o EtatRobotFige.o Robot.o EtatRobotAVideFaceObstacle.o EtatRobotEnCharge.o EtatRobotEnChargeFaceObstacle.o AfficheurConsole.o CommandeDefaire.o
	
main.o: main.cpp AfficheurConsole.h
	g++ -o main.o -c main.cpp

AfficheurConsole.o: AfficheurConsole.cpp AfficheurConsole.h Afficheur.h \
 Robot.h Obstacle.h Objet.h Position.h EtatRobot.h Affichable.h
	g++ -o AfficheurConsole.o -c AfficheurConsole.cpp
	
EtatRobotAVide.o: EtatRobotAVide.cpp EtatRobotAVide.h EtatRobotEnRoute.h \
 EtatRobot.h Robot.h Obstacle.h Objet.h Position.h Affichable.h \
 Afficheur.h EtatRobotAVideFaceObstacle.h
	g++ -o EtatRobotAVide.o -c EtatRobotAVide.cpp
	
EtatRobot.o: EtatRobot.cpp EtatRobot.h Robot.h Affichable.h Afficheur.h Objet.h Obstacle.h EtatRobotAVide.h EtatRobotEnRoute.h EtatRobotFige.h Position.h
	g++ -o EtatRobot.o -c EtatRobot.cpp
	
EtatRobotEnRoute.o: EtatRobotEnRoute.cpp EtatRobotEnRoute.h EtatRobot.h Robot.h Affichable.h Afficheur.h Objet.h Obstacle.h EtatRobotAVide.h Position.h EtatRobotFige.h
	g++ -o EtatRobotEnRoute.o -c EtatRobotEnRoute.cpp
	
EtatRobotEnCharge.o: EtatRobotEnCharge.cpp EtatRobotEnCharge.h \
 EtatRobotEnRoute.h EtatRobot.h Robot.h Obstacle.h Objet.h Position.h \
 Affichable.h Afficheur.h EtatRobotEnChargeFaceObstacle.h
	g++ -o EtatRobotEnCharge.o -c EtatRobotEnCharge.cpp

EtatRobotFige.o : EtatRobotFige.cpp EtatRobotFige.h EtatRobot.h Robot.h Affichable.h Afficheur.h Objet.h Obstacle.h EtatRobotAVide.h EtatRobotEnRoute.h Position.h
	g++ -o EtatRobotFige.o -c EtatRobotFige.cpp
	
EtatRobotEnChargeFaceObstacle.o: EtatRobotEnChargeFaceObstacle.cpp \
 EtatRobotEnChargeFaceObstacle.h EtatRobotEnRoute.h EtatRobot.h Robot.h \
 Obstacle.h Objet.h Position.h Affichable.h Afficheur.h \
 EtatRobotEnCharge.h EtatRobotAVideFaceObstacle.h
	g++ -o EtatRobotEnChargeFaceObstacle.o -c EtatRobotEnChargeFaceObstacle.cpp
	
EtatRobotAVideFaceObstacle.o: EtatRobotAVideFaceObstacle.cpp \
 EtatRobotAVideFaceObstacle.h EtatRobotEnRoute.h EtatRobot.h Robot.h \
 Obstacle.h Objet.h Position.h Affichable.h Afficheur.h \
 EtatRobotEnChargeFaceObstacle.h EtatRobotEnCharge.h
	g++ -o EtatRobotAVideFaceObstacle.o -c EtatRobotAVideFaceObstacle.cpp
	
Robot.o: Robot.cpp Robot.h Obstacle.h Objet.h Position.h EtatRobot.h \
 Affichable.h Afficheur.h EtatRobotAVide.h EtatRobotEnRoute.h \
 EtatRobotAVideFaceObstacle.h
	g++ -o Robot.o -c Robot.cpp
	
Affichable.o : Affichable.cpp Affichable.h Afficheur.h
	g++ -o Affichable.o -c Affichable.cpp

Commande.o: Commande.cpp Commande.h Interface.h Robot.h Obstacle.h \
 Objet.h Position.h EtatRobot.h Affichable.h Afficheur.h
	g++ -o Commande.o -c Commande.cpp
CommandeTourner.o: CommandeTourner.cpp CommandeTourner.h CommandesRobot.h \
 Robot.h Obstacle.h Objet.h Position.h EtatRobot.h Affichable.h \
 Afficheur.h Commande.h Interface.h
	g++ -o CommandeTourner.o -c CommandeTourner.cpp

CommandePoser.o: CommandePoser.cpp CommandePoser.h CommandesRobot.h \
 Commande.h Interface.h Robot.h Obstacle.h Objet.h Position.h EtatRobot.h \
 Affichable.h Afficheur.h
	g++ -o CommandePoser.o -c CommandePoser.cpp

CommandePeser.o: CommandePeser.cpp CommandePeser.h CommandesRobot.h \
 Commande.h Interface.h Robot.h Obstacle.h Objet.h Position.h EtatRobot.h \
 Affichable.h Afficheur.h
	g++ -o CommandePeser.o -c CommandePeser.cpp

CommandeEvaluerObstacle.o: CommandeEvaluerObstacle.cpp \
 CommandeEvaluerObstacle.h CommandesRobot.h Commande.h Interface.h \
 Robot.h Obstacle.h Objet.h Position.h EtatRobot.h Affichable.h \
 Afficheur.h
	g++ -o CommandeEvaluerObstacle.o -c CommandeEvaluerObstacle.cpp

CommandeFiger.o: CommandeFiger.cpp CommandeFiger.h CommandesRobot.h \
 Commande.h Interface.h Robot.h Obstacle.h Objet.h Position.h EtatRobot.h \
 Affichable.h Afficheur.h
	g++ -o CommandeFiger.o -c CommandeFiger.cpp

CommandeRepartir.o: CommandeRepartir.cpp CommandeRepartir.h \
 CommandesRobot.h Commande.h Interface.h Robot.h Obstacle.h Objet.h \
 Position.h EtatRobot.h Affichable.h Afficheur.h
	g++ -o CommandeRepartir.o -c CommandeRepartir.cpp

CommandeAvancer.o: CommandeAvancer.cpp CommandeAvancer.h CommandesRobot.h \
 Commande.h Interface.h Robot.h Obstacle.h Objet.h Position.h EtatRobot.h \
 Affichable.h Afficheur.h
	g++ -o CommandeAvancer.o -c CommandeAvancer.cpp
	
CommandeSaisir.o: CommandeSaisir.cpp CommandeSaisir.h CommandesRobot.h \
 Commande.h Interface.h Robot.h Obstacle.h Objet.h Position.h EtatRobot.h \
 Affichable.h Afficheur.h
	g++ -o CommandeSaisir.o -c CommandeSaisir.cpp

CommandeRencontrerObstacle.o: CommandeRencontrerObstacle.cpp \
 CommandeRencontrerObstacle.h CommandesRobot.h Commande.h Interface.h \
 Robot.h Obstacle.h Objet.h Position.h EtatRobot.h Affichable.h \
 Afficheur.h
	g++ -o CommandeRencontrerObstacle.o -c CommandeRencontrerObstacle.cpp
	
CommandeDefaire.o: CommandeDefaire.h Commande.h Interface.h Robot.h \
 Obstacle.h Objet.h Position.h EtatRobot.h Affichable.h Afficheur.h
	g++ -o CommandeDefaire.o -c CommandeDefaire.cpp

clean :
	rm *.o
	rm robot.exe
